package com.koron.plan.web.patrolplan.bean.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.koron.plan.web.common.DeleteFlag;
import com.koron.plan.web.common.UpdateParameter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

@Data
@ApiModel("巡视计划-巡视点")
public class PatrolPlanPointBean implements Serializable, DeleteFlag, UpdateParameter {

    private static final long serialVersionUID = 843712762175299870L;

    @ApiModelProperty("32位随机数，主键")
    private String id;

    @ApiModelProperty("{标识码}{单位缩写}{YYYYMMDD}{流水号}，eg:XSDTY20210923001")
    private String code;

    @ApiModelProperty("RFID编号")
    private String rfidCode;

    @ApiModelProperty("巡视点名称")
    private String name;

    @ApiModelProperty("巡视点所属单位")
    private String pointDeptId;

    @ApiModelProperty("巡视点所属单位名称")
    private String pointDeptName;

    @ApiModelProperty("值班地点 所选位置没有填写经纬度则不允许选择")
    private String locationId;

    @ApiModelProperty("巡视点类型 设备间，设备（无巡视环境）")
    private String patrolPointType;

    @ApiModelProperty("创建人,账号")
    private String createBy;

    @ApiModelProperty("创建人名称")
    private String createByName;

    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    @ApiModelProperty("修改人,账号")
    private String updateBy;

    @ApiModelProperty("修改人名字")
    private String updateByName;

    @ApiModelProperty("修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    @ApiModelProperty("主表需要部门字段，用于数据权限")
    private String deptId;

    @ApiModelProperty("部门名称")
    private String deptName;

    @JsonIgnore
    @ApiModelProperty("删除标志 0：未删除 1：已删除")
    private Boolean deleteFlag;

}
